package com.lty.jeeg.server.modules.fas.service;

import com.lty.jeeg.server.modules.fas.dto.GoodsDTO;
import com.lty.jeeg.server.modules.fas.export.GoodsExportEntity;
import com.lty.jeeg.server.common.page.table.PageTableRequest;
import com.lty.jeeg.server.common.page.table.PageTableResponse;
import com.lty.jeeg.server.modules.fas.vo.GoodsVO;

import java.util.List;

/**
 * @author : LTY
 * @date : 2019-01-18 16:37:02
 * Description : 商品
 */
public interface GoodsService {

    /**
     * 根据ID获取
     * @param id ID
     * @return bean
     */
    GoodsDTO getById(Long id);

    /**
     * 根据编码获取
     * @param code
     * @return
     */
    GoodsDTO getByCode(String code);

    /**
     * 删除
     * @param id ID
     * @return 1/0
     */
    int delete(Long id);

    /**
     * 修改
     * @param goodsDTO bean
     * @return 1/0
     */
    int update(GoodsDTO goodsDTO);

    /**
     * 保存
     * @param goodsDTO bean
     * @return ID
     */
    Long save(GoodsDTO goodsDTO);

    /**
     * 列表
     * @param request ID
     * @return 分页
     */
    PageTableResponse list(PageTableRequest request);

    /**
     * 不分页列表
     * @param goodsDTO 筛选项
     * @return 分页
     */
    List<GoodsExportEntity> getExportDatas(GoodsDTO goodsDTO);

    /**
     * 商品导入
     * @author xuchen
     * @param goodList
     * @return
     */
    List<GoodsExportEntity> importData(List<Object> goodList);
}
